<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <style>
        /* #main{
            width: 600px;
            height: 400px;
        } */
    </style>
    <div id="main"></div>
    <script src="./js/echarts.min.js"></script>
    <script type="text/javascript">
        // 初始化 echarts  这时候 图表并没有任何的显示
        var myChart = echarts.init(document.getElementById('main'), null, {
            width: 600,
            height: 400
        });

        // 图表数据
        var data = [];
        for (let i = 0; i < 6; ++i) {
            data.push(Math.round(Math.random() * 200));
        }

       let option = {
            xAxis: {
                max: 'dataMax'
            },
            yAxis: {
                type: 'category',
                data: ['A', 'B', 'C', 'D', 'E','F'],
                inverse: true,
                // 动画时间
                animationDuration: 300,
                animationDurationUpdate: 300,
                // 显示的柱状图 
                max: 5 // only the largest 3 bars will be displayed
            },
            series: [
                {
                    realtimeSort: true,
                    name: 'X',
                    type: 'bar',
                    data: data,
                    label: {
                        show: true,
                        position: 'right',
                        valueAnimation: true
                    }
                }
            ],
            legend: {
                show: true
            },
            // 柱状图的动态效果
            //  动画时间
            animationDuration: 3000,
            // 动画更新时间
            animationDurationUpdate: 3000,
            // 动画运动曲线
            animationEasing: 'linear',
            animationEasingUpdate: 'linear'
        };

        function update() {
            var data = option.series[0].data;
            for (var i = 0; i < data.length; ++i) {
                if (Math.random() > 0.9) {
                    data[i] += Math.round(Math.random() * 2000);
                } else {
                    data[i] += Math.round(Math.random() * 200);
                }
            }
            myChart.setOption(option);
        }

        setInterval(function () {
            update();
        }, 3000);

        // 给图表写入数据，  这个时候 图表数据才会真正的展示在 页面上
        myChart.setOption(option)
    </script>
</body>

</html>